'''
工具文件,获取随机的手机号
1 + str(randint(3,9)) +str(randint(0,9))
'''
import random

def get_tel():
    '''
    列表推导式方法:目标,就是产生列表
    语法:[计算公式 for循环]
    执行逻辑,先执行for循环代码,再按照左边计算公式执行,执行后自动添加到列表中,然后继续下一次训话
    '''

    '''使用列表推导式,获取随机电话号码'''
    # 固定"1" + 第二位 + 先执行循环代码.然后执行左边计算代码,然后再讲列表中的数字拼接起来
    return "1" + str(random.randint(0,9)) +  "".join([str(random.randint(0,9)) for _ in range(9)])
def get_tel_normal():
    # 获取手机号普通版本
    # 1.定义一个空字符串,定义好前面两位,然后再拼接后九位数字
    temp_str = "1" + str(random.randint(3,9))

    # 2.使用循环生成九个数字
    # 行业规则,一般循环内没有用到临时变量,那个临时变量通常写为_
    for _ in range(9):
        # 3.生成随机数
        num = random.randint(0,9)
        # 4.拼接随机数
        temp_str += str(num)  #因为上面是str 所以要转换为str
        # 5.返回随机手机号
    return temp_str
# 方法2
def get_tel_list():
    '''
    目标:生成9个包含数字的列表["3","5".....]
    先生成一个列表,再进行拼接
    '''

    number_list = []
    for i in range(9):
        num = random.randint(0,9)
        number_list.append(str(num))
    number_str = "1"+ str(random.randint(3,9))  + "".join(number_list)
    return number_str

if __name__ == '__main__':
    # 方法1
    tel = get_tel_normal()
    print(tel)
    # 方法2
    number_str = get_tel_list()
    print(number_str)
    #使用列表推导式
    number_str = get_tel()
    print(number_str)


